package com.lavender.util.helper;


import com.typesafe.config.Config;
import com.typesafe.config.ConfigFactory;
import org.springframework.util.ResourceUtils;

import java.io.File;
import java.io.FileNotFoundException;

/**
 * <p>
 * Spring使用{@link ResourceUtils}来获取各种路径。
 * 自己的业务代码中也可以使用该工具类来进行编码。
 * e.g：
 * FileSystemResource 以文件系统绝对路径的方式进行访问；
 * ClassPathResource 以类路径的方式进行访问；
 * ServletContextResource 以相对于 Web 应用根目录的方式进行访问。
 * ResourceUtils 它支持“classpath:”和“file:”的地址前缀，它能够从指定的地址加载文件资源，常用方法：getFile()
 * </p>
 *
 * @author: zhu.chen
 * @date: 2021/1/7
 * @version: v1.0.0
 */
public class ResourceUtilsTest {

    public static void main(String[] args) throws FileNotFoundException {
        // 1：直接获取classpath下的config.properties
        File file1 = ResourceUtils.getFile("classpath:config.properties");
        Config config1 = ConfigFactory.parseFile(file1);
        System.out.println("name1 : " + config1.getString("name"));

        // 1：获取指定路径下的config.properties
        File file2 = ResourceUtils.getFile("file:C:\\Users\\zhuchen8\\Desktop\\config.properties");
        Config config2 = ConfigFactory.parseFile(file2);
        System.out.println("name2 : " + config2.getString("name"));
    }

}
